﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Zocono.Infrastructure.Common;
using Zocono.WCS.Domain.DomainRepository;
using Zocono.WCS.Domain.EntityInfo;
using Zocono.WCS.Infrastructure.ApllicationDto.WCSTaskDto;
using Zocono.WCS.Infrastructure.ApllicationDto;

namespace Zocono.WCS.Domain.ProgrameDomain
{
    public interface IProgrameService : IDomainService
    {
        Task<List<ProgrameInfo>> GetAllProgrameInfo();
        Task<ProgrameInfo> GetProgrameInfo(string programeCode);
        Task<bool> ProgrameStart(string programeCode);
        Task<bool> PromgrameTick(string programeCode);
        Task<bool> ProgrameStop(string programeCode);

        Task<PageDto<ProgrameInfo>> GetPagedProgrameInfoAsync(QueryProgrameInfoDto queryProgrameInfo);
        Task<bool> CreateProgrameInfoAsync(ProgrameInfo programeInfo);
        Task<bool> ModifyProgrameInfoAsync(ProgrameInfo programeInfo);
        Task<bool> DeleteProgrameInfoAsync(List<ProgrameInfo> programeInfoList);
        Task<ProgrameInfo> GetProgrameInfoByIdAsync(long id);
        Task<bool> DelectProgrameByIdAsync(long id);
    }
}
